home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / basic / days.bas < prev    next >
Encoding:
BASIC Source File  |  1983-11-29  |  3.5 KB  |  81 lines

  1. 100 'PROGRAM TO CALCULATE THE NUMBER OF DAYS BETWEEN TWO DATES
  2. 110 'BY LYNN LONG
  3. 120 'TULSA RBBS   918-749-0718
  4. 130 '24 HOURS 300/1200 XMODEM
  5. 140 CLS:KEY OFF
  6. 150 LOCATE 9,15:PRINT CHR$(201);STRING$(48,205);CHR$(187)
  7. 160 FOR X=10 TO 15:LOCATE X,15:PRINT CHR$(186):LOCATE X,64:PRINT CHR$(186):NEXT
  8. 170 LOCATE X,15:PRINT CHR$(200);STRING$(48,205);CHR$(188)
  9. 180 LOCATE 11,25:PRINT"DAYS BETWEEN DATES CALCULATOR"
  10. 190 LOCATE 12,34:PRINT"BY LYNN LONG"
  11. 200 LOCATE 13,35:PRINT"TULSA RBBS"
  12. 210 LOCATE 14,34:PRINT"918-749-0718"
  13. 220 FOR X=1 TO 2500:NEXT
  14. 230 CLS
  15. 240 LOCATE 5,10:PRINT CHR$(201);STRING$(58,205);CHR$(187)
  16. 250 FOR X=6 TO 19:LOCATE X,10:PRINT CHR$(186):LOCATE X,69:PRINT CHR$(186):NEXT
  17. 260 LOCATE X,10:PRINT CHR$(200);STRING$(58,205);CHR$(188)
  18. 270 LOCATE 7,15
  19. 280 PRINT"THIS PROGRAM SERVES AS AN EXAMPLE OF HOW TO COMPUTE"
  20. 290 LOCATE 8,15
  21. 300 PRINT"THE NUMBER OF DAYS BETWEEN TWO GIVEN DATES.  IT CAN"
  22. 305 LOCATE 9,15
  23. 310 PRINT"BE APPLIED TO BIORHYTHM CALCULATIONS, LOAN INTEREST"
  24. 320 LOCATE 10,15
  25. 330 PRINT"CALCULATIONS ETC."
  26. 340 LOCATE 12,15
  27. 350 PRINT"THE PROGRAM TAKES A BEGINNING DATE AND CALCULATES A"
  28. 360 LOCATE 13,15
  29. 370 PRINT"FACTOR FOR IT.  IT THEN CALCULATES A FACTOR FOR THE"
  30. 380 LOCATE 14,15
  31. 390 PRINT"FOR THE ENDING DATE AND SUBTRACTS THE TWO TO DERIVE"
  32. 400 LOCATE 15,15
  33. 410 PRINT"THE NUMBER OF DAYS BETWEEN TWO DATES.  I WOULD LIKE"
  34. 420 LOCATE 16,15
  35. 430 PRINT"TO EMPHASIZE THAT I HAVE NOT PERFORMED ANY  EDITING"
  36. 440 LOCATE 17,15
  37. 450 PRINT"FOR VALID MONTHS, DAYS, ETC.  I WILL LEAVE THAT  UP"
  38. 460 LOCATE 18,15
  39. 470 PRINT"TO YOU FOR WHATEVER USE YOU MIGHT FIND FOR THE CODE"
  40. 480 LOCATE 25,27
  41. 490 INPUT"PRESS ANY KEY TO CONTINUE ",A$
  42. 500 CLS
  43. 510 LOCATE 6,30:PRINT"DATES ENTRY SCREEN"
  44. 520 LOCATE 8,1:PRINT CHR$(201);STRING$(38,205);CHR$(203);STRING$(38,205);CHR$(187)
  45. 530 FOR X=9 TO 15:LOCATE X,1:PRINT CHR$(186):LOCATE X,40:PRINT CHR$(186):LOCATE X,79:PRINT CHR$(186):NEXT
  46. 540 LOCATE X,1:PRINT CHR$(200);STRING$(38,205);CHR$(202);STRING$(38,205);CHR$(188)
  47. 550 LOCATE 10,5
  48. 560 INPUT"ENTER BEGINNING MONTH AS MM  ",MM
  49. 570 LOCATE 11,5
  50. 580 INPUT"ENTER BEGINNING DAY AS DD    ",DD
  51. 590 LOCATE 12,5
  52. 600 INPUT"ENTER BEGINNING YEAR AS YYYY ",YY
  53. 610 GOSUB 2000
  54. 620 F1 = F
  55. 630 LOCATE 10,45
  56. 640 INPUT"ENTER ENDING MONTH AS MM     ",MM
  57. 650 LOCATE 11,45
  58. 660 INPUT"ENTER ENDING DAY AS DD       ",DD
  59. 670 LOCATE 12,45
  60. 680 INPUT"ENTER ENDING YEAR AS YYYY    ",YY
  61. 685 GOSUB 2000
  62. 690 F2= F
  63. 700 DIF=F2-F1
  64. 710 LOCATE 22,19
  65. 720 PRINT"THE NUMBER OF DAYS BETWEEN THE ABOVE DATES = ";DIF
  66. 990 END
  67. 2000 'THIS IS THE SUBROUTINE THAT ACTUALLY DOES THE FACTOR CALCULATION
  68. 2010 'IT FIRST CHECKS TO SEE IF THE MONTH IS LESS THAN 3.  IF SO THEN
  69. 2020 'WE HAVE NOT HAD A LEAP YEAR DAY YET SO WE DO NOT HAVE TO TAKE THAT
  70. 2030 'INTO CONSIDERATION.  IF THE MONTH IS > 3 THEN IT IS POSSIBLE THAT
  71. 2040 'WE NEED TO CONSIDER A LEAP YEAR AND THE PROGRAM ADJUST IS CALCS
  72. 2050 'ACCORDINGLY
  73. 2060 IF MM < 3 THEN 2500
  74. 2070 F = 365 * (YY) + DD + 31 * (MM - 1) - INT(.4 * MM + 2.3) + INT(YY / 4) - INT(.75 * (INT(YY / 100) + 1))
  75. 2490 RETURN
  76. 2500 F = 365 * (YY) + DD + 31 * (MM - 1) + INT((YY - 1)/4) - INT(.75 * (INT(((YY - 1)/100) + 1))
  77. 2510 RETURN
  78. RN
  79. 2500 F = 365 * (YY) + DD + 31 * (MM - 1) + INT((YY - 1)/4) - INT(.75 * (INT(((YY - 1)/100) + 1))
  80. 2510 RETURN
  81.